// pages/user/user.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userInfo:null,
    openId:null,
    imgPath:null
  },

  // 授权登录
  authLogin(){
    wx.getUserProfile({
      desc: '用于登录',
      success:res=>{
        app.globalData.userInfo =res;
        this.setData({
          userInfo:res
        })
        // 获取用户的openId
        this.getUserOpenId();
        // 获取用户的背景图片
        this.setImgPath()
      },
      fail:err=>{
        console.log("授权失败",err);
      }
    })
  },
  // 获取用户的openId
  getUserOpenId(){
    if (!app.globalData.onpeId) {
      wx.cloud.callFunction({
        name:"changku"
      }).then(res=>{
        app.globalData.openId = res.result.openid;
        this.setData({
          openId:res.result.openid
        })
      })
    }
  },

  // 设置图片的路径
  setImgPath(){
    // 查询用户是否有上传过图片
    let userBackImg = wx.cloud.database().collection("userBackImg");
    userBackImg.get().then(res=>{
      if (res.data.length>0) {
        this.setData({
          imgPath:res.data[0].userBackImg
        })
      }
    })
  },
  // 保存用户的图片到数据库
  saveImg(path){
    let userBackImg = wx.cloud.database().collection("userBackImg");
    userBackImg.get().then(res=>{
      // console.log(res);
      if (res.data.length==0) {
        userBackImg.add({
          data:{
            userBackImg:path
          }
        })
      }else{
        userBackImg.doc(res.data[0]._id).get().then(res=>{
          // 删除原本的图片
          wx.cloud.deleteFile({
            fileList:[res.data.userBackImg],
            success:res=>{
              console.log(res);
            },
            fail:err=>{
              console.log(err);
            }
          })
        })
        userBackImg.doc(res.data[0]._id).update({
          data:{
            userBackImg:path
          }
        })
      }
    })

  },
  // 上传背景图片
  uploadImg(){
    wx.showModal({
      title: '提示',
      content: '更换背景图片',
      success :(res)=> {
        if (res.confirm) {
          // 确定
          wx.chooseImage({
            count: 1,
            success:e=>{
              let path =e.tempFilePaths[0];
              // 上传到云存储
              let imgName = new Date().getTime()+"_"+Math.random();
              let extName = path.slice(path.indexOf("."))
              wx.cloud.uploadFile({
                cloudPath:"userBackImg/backimg"+imgName+extName,
                filePath:path,
                success:res=>{
                  // 保存到数据库
                  this.saveImg(res.fileID);
                  // 修改imgPath
                  this.setData({
                    imgPath:res.fileID
                  })
                  wx.showToast({
                    title: '更换成功！',
                  })
                }
              })
            }
          })
        } else if (res.cancel) {
          // 取消
          console.log('用户点击取消')
        }
      }
    })
  },

  onLoad(){
    if (app.globalData.userInfo) {
      this.setData({
        userInfo:app.globalData.userInfo
      })
      this.setImgPath();
    }
  },

  onShow(){
  },
  onHide(){
  },


  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})